Extensible Markup Language (XML) is a set of standardized rules for encoding electronic documents in machine-readable format for simplicity, generality, and usability over the Internet. While the design of this textual data format focuses on documents, it is widely used for the representation of arbitrary data structures, for example in web services. There are various versions and variations of XML. One example of XML type use is the standardized Office Open XML (OOXML) file format developed by Microsoft Corp. of Redmond, Wash. OOXML includes a set of file formats that can be used to represent electronic office documents. The formats define a set of XML markup vocabularies for word processing documents, spreadsheets, and presentations as well as specific XML markup vocabularies for content such as mathematical formulas, graphics, bibliographies, and comparable ones. The standardized OOXML format is intended to facilitate extensibility and interoperability by enabling implementations by multiple creators and on multiple platforms.
A style definition document part commonly referred to as a “style sheet” is a form of separation of presentation and content in document processing programs that store and apply formatting to text. Individual styles may be included in document templates as default styles or created by the users with a wide variety of commands that dictate how a selected portion of data is formatted. Style sheets help publications maintain consistency such that common elements such as body, headlines, footnotes, number formatting, font color, background color etc. always appear the same. Style sheets also save time allowing an author to apply a format to selected elements in one operation instead of one at a time.
When using custom style definitions in documents, there is a potential for corrupting file contents. In certain scenarios, when contents are copied from multiple documents, having custom styles may lead to file corruption due to variety of reasons related to document architectures. An OOXML package is a compressed (or compressible) package containing XML documents and other resources such as style definitions associated with the document(s). Contents of an OOXML package may be accessed by an application or tool without having to activate an application for editing the documents themselves.